package 错题;

import java.util.Arrays;

public class 插入排序的算法 {


    public static void main(String[] args) {
        int[] nums ={3,6,7,2,7,3,5,1};

        for (int i = 1; i < nums.length; i++) {
            int temp = nums[i];//拿到要比较的数 i=5,temp = 3
            int j = i - 1;//拿到要比较的开始位置j= 4

            while (temp< nums[j]){//判断前面的数是否大于要比较的数 nums[3] = 2;
                nums[j+1] = nums[j];//大于则将前面的数（更大）往后移

                j--;//拿到下一个要比较大小的数组下标j=3

                if(j == -1) break;//到头了，退出比较
            }

            int result = j+1;//找到了要插入的数组下标 result =4

            nums[result] = temp;//将比较的数插入该位置
        }
        System.out.println(Arrays.toString(nums));//升序
    }
}
